﻿using Nemerle;
using Nemerle.Collections;
using Nemerle.Text;
using Nemerle.Utility;

using System;
using System.Collections.Generic;
using System.Linq;

namespace Nemerle2.Compiler
{
  /// <summary>
  /// Description of IMacroInfo.
  /// </summary>
  public interface IMacroInfo
  {
    Name        : string                   { get; }
    Namespace   : list[string]             { get; }
    Parameters  : list[MacroParameterInfo] { get; }
    Description : string                   { get; }
    AppliedTo   : MacroTargets             { get; }
    TypeInfos   : list[ITypeInfo]          { get; }
  }
}
